As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option is an Information Handling System (IHS). An IHS generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes. Because technology and information handling needs and requirements may vary between different applications, IHSs may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in IHSs allow for IHSs to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, global communications, etc. In addition, IHSs may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
An IHS may utilize various protocols and standards for communicating with internal components of the IHS and with the external components and systems that are supported by the IHS. PCIe (Peripheral Component Interconnect Express) is a high-bandwidth input/output (I/O) interface or data bus that is commonly used by IHSs as a communication mechanism. Because of its high-speed data transmission capabilities, PCIe is used as a communication interface for many types of components, including graphics cards, streaming multimedia devices, network cards, USB cards and certain types of storage devices. PCIe may also be used for establishing direct high-speed connections between IHSs that are in close proximity to each other and are configured as a computing cluster, such as in an enterprise data center implementation. The components of an IHS that utilize PCIe may include integrated components of the IHS as well as removable components that are coupled to the IHS via the use of expansion cards.
PCIe devices typically interface with a PCIe bus provided by an IHS. A PCIe bus connection is logically organized into data pathways referred to as lanes, where each lane consists of two differential pairs of signaling wires. One of the differential pairs of each lane is used for transmission of PCIe data and the other differential pair is used for receiving PCIe data. In server applications, common PCIe connections include eight lane (×8), sixteen lane (×16) and thirty-two lane (×32) connections. Various other bandwidth PCIe connections may be supported by an IHS based on the types of PCIe devices and components that are supported by the IHS. PCIe supports the grouping of multiple lanes into higher bandwidth PCIe connections that may be referred to as links. The greater the number of lanes within link, the higher the bandwidth of the link. For instance, within an ×32 PCIe bus, the lanes may be grouped into four ×8 bandwidth PCIe links, two ×16 bandwidth PCIe links, or into combinations of links of various other bandwidths.
An IHS typically includes a printed circuit board (also referred to as a motherboard or a baseboard) that includes various different connectors. The form factor of each connector may conform to a particular standard or protocol that is supported by the connector and thus also determines the components that may be coupled to the IHS using the connector. Certain connectors may serve as expansion slots that allow different cards to be electrically coupled to the IHS in order to provide additional capabilities to the system. For instance, a PCIe network card may be coupled to an IHS via a PCIe connector provided on the motherboard of the IHS. Certain of these connectors provided by an IHS may allow components to interface with one of the communications buses utilized by the IHS. For example, a PCIe connector provided on the motherboard of the IHS may allow the components coupled to the connector to interface with the PCIe bus utilized by the IHS.
One aspect of utilizing PCIe communications is the relatively fixed nature of PCIe connections. In order to couple a PCIe compliant device to a PCIe bus, a number of the available PCIe lanes are dedicated to this connection to the PCIe compliant device. The greater the number of lanes dedicated to a PCIe connection, the greater the portion of the available PCIe bandwidth that is consumed by the PCIe connection. The lanes dedicated to a PCIe connection remain reserved for the exclusive use of the PCIe compliant device as long as it remains coupled to the PCIe bus. Due to the many advantages provided by PCIe connections, including the ability to configure high-speed connections between components, there is typically no shortage of demand for the available PCIe bandwidth. As such, the available PCIe bandwidth must be allocated among the competing priorities of an IHS. However, for IHSs such as servers that may be periodically repurposed and/or reconfigured, the demands for PCIe bandwidth may nonetheless change over time.